perm filename USCSUA.SAI[PIC,TOB] blob
sn#224307 filedate 1976-07-08 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00002 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 convert usc format to su format files
C00007 ENDMK
C⊗;
comment convert usc format to su format files;
BEGIN "USC TO SU"
EXTERNAL PROCEDURE BAIL;
REQUIRE "ABBREV.1D[S1,TOB]" SOURCE_FILE;
REQUIRE "STD.12H[S1,TOB]" SOURCE_FILE;
REQUIRE "STD[S1,TOB]" LOAD_MODULE;
REQUIRE "IOFILE.1E[S1,TOB]" SOURCE_FILE;
REQUIRE "IOFILE[S1,TOB]" LOAD_MODULE;
INTEGER INPUT_CHANNEL,OUTPUT_CHANNEL;
INTEGER BITS,BYTES;
INTEGER X1,Y1,X2,Y2;
INTEGER WDS_LINE,SIZE_FILE;
INTEGER I;
STRING FILE;
FILE←OPEN_IN("USC","PIC,HE",INPUT_CHANNEL);
OPEN_OUT(FILE,"SU","PIC,HE",OUTPUT_CHANNEL);
BITS←8;
X1←Y1←1;
X2←Y2←512;
WRITE(BITS);WRITE(X1);WRITE(X2);WRITE(Y1);WRITE(Y2);
BAIL;
WORDOUT(OUTPUT_CHANNEL,-1); comment first word identifier;
WORDOUT(OUTPUT_CHANNEL,BITS); comment number of bits;
BYTES←WORD_SIZE%BITS; comment bytes per word;
WDS_LINE←(X2-X1+BYTES)%BYTES;
WORDOUT(OUTPUT_CHANNEL,WDS_LINE);
WORDOUT(OUTPUT_CHANNEL,Y1);
WORDOUT(OUTPUT_CHANNEL,Y2);
WORDOUT(OUTPUT_CHANNEL,X1);
WORDOUT(OUTPUT_CHANNEL,X2);
SIZE_FILE←WDS_LINE*(Y2-Y1+1);
WORDOUT(OUTPUT_CHANNEL,XWD(-SIZE_FILE,'200));
FOR I←1 STEP 1 UNTIL 3 DO WORDOUT(OUTPUT_CHANNEL,0);
FOR I←'13 STEP 1 UNTIL '177 DO WORDOUT(OUTPUT_CHANNEL,0);
INOUT(INPUT_CHANNEL,OUTPUT_CHANNEL,SIZE_FILE);;
CLOSE(OUTPUT_CHANNEL);
END "USC TO SU";